.login-page {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  padding: 20px;
  
  .login-container {
    width: 100%;
    max-width: 400px;
    
    .login-header {
      text-align: center;
      margin-bottom: 30px;
      color: white;
      
      .logo {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: 16px;
        
        .logo-icon {
          font-size: 48px;
          margin-bottom: 12px;
        }
        
        h1 {
          margin: 0;
          font-size: 28px;
          font-weight: 500;
        }
      }
      
      .slogan {
        font-size: 16px;
        opacity: 0.9;
        margin: 0;
      }
    }
    
    .login-card {
      border-radius: 8px;
      box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
      
      .ant-card-body {
        padding: 32px;
      }
    }
    
    .login-footer {
      margin-top: 16px;
      padding-top: 16px;
      border-top: 1px solid #f0f0f0;
      
      a {
        color: #1890ff;
        font-size: 14px;
        
        &:hover {
          color: #40a9ff;
        }
      }
    }
    
    .login-info {
      margin-top: 30px;
      
      .info-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        color: rgba(255, 255, 255, 0.9);
        
        .info-icon {
          font-size: 24px;
          margin-bottom: 8px;
        }
        
        .info-text {
          font-size: 14px;
        }
      }
    }
  }
}

@media (max-width: 576px) {
  .login-page {
    padding: 10px;
    
    .login-container {
      .login-header {
        .logo {
          .logo-icon {
            font-size: 36px;
          }
          
          h1 {
            font-size: 24px;
          }
        }
        
        .slogan {
          font-size: 14px;
        }
      }
      
      .login-card {
        .ant-card-body {
          padding: 24px;
        }
      }
    }
  }
}